﻿@using QLNS
@{
    ViewBag.Title = "Add";
    Layout = "~/Views/Shared/_Home.cshtml";
}
<script type="text/javascript" src="/Content/ckfinder/ckfinder.js"></script>
<script type="text/javascript" language="JavaScript">
    function BrowseServer() {
        // You can use the "CKFinder" class to render CKFinder in a page:
        var finder = new CKFinder();
        finder.basePath = '/Content/ckfinder/';
        finder.selectActionFunction = SetFileField;
        finder.SelectFunction = 'ShowFileInfo';
        finder.popup();

    }
    
    // This is a sample function which is called when a file is selected in CKFinder.
    function SetFileField(fileUrl) {
        document.getElementById("Image").value = fileUrl;
    }
</script>
<link rel="stylesheet" href="@Url.Content("~/Content/jquery-ui.css")" />  
  <script src="@Url.Content("~/Scripts/jquery-ui1.js")" type="text/javascript"></script>
  <script type="text/javascript">
      $(function () {
          $("#NgaySinh").datepicker();
          $("#NgaySinh").datepicker("option", "dateFormat", "dd/mm/yy");
          $("#NgayTuyenDung").datepicker();
          $("#NgayTuyenDung").datepicker("option", "dateFormat", "dd/mm/yy");
          $("#NgayHuongLuong").datepicker();
          $("#NgayHuongLuong").datepicker("option", "dateFormat", "dd/mm/yy");
          $("#NgayVaoDang").datepicker({
              showOn: "button",
              buttonImage: "/content/images/calendar.gif",
              buttonImageOnly: true
          });
          $("#NgayVaoDang").datepicker("option", "dateFormat", "dd/mm/yy");
          $("#NgayVaoChinhThuc").datepicker({
              showOn: "button",
              buttonImage: "/content/images/calendar.gif",
              buttonImageOnly: true
          });
          $("#NgayVaoChinhThuc").datepicker("option", "dateFormat", "dd/mm/yy");
          $("#NgayTGTC_CTXH").datepicker({
              showOn: "button",
              buttonImage: "/content/images/calendar.gif",
              buttonImageOnly: true
          });
          $("#NgayTGTC_CTXH").datepicker("option", "dateFormat", "dd/mm/yy");
          $("#NgayNhapNgu").datepicker({
              showOn: "button",
              buttonImage: "/content/images/calendar.gif",
              buttonImageOnly: true
          });
          $("#NgayNhapNgu").datepicker("option", "dateFormat", "dd/mm/yy");
          $("#NgayXuatNgu").datepicker({
              showOn: "button",
              buttonImage: "/content/images/calendar.gif",
              buttonImageOnly: true
          });
          $("#NgayXuatNgu").datepicker("option", "dateFormat", "dd/mm/yy");
          $("#NgayCap").datepicker();
          $("#NgayCap").datepicker("option", "dateFormat", "dd/mm/yy");
          $("#NgayNhanChuc").datepicker({
              showOn: "button",
              buttonImage: "/content/images/calendar.gif",
              buttonImageOnly: true
          });
          $("#NgayNhanChuc").datepicker("option", "dateFormat", "dd/mm/yy");
      });
  </script>

<script src="@Url.Content("~/Scripts/jqxtabs.js")" type="text/javascript" ></script>
<script type="text/javascript">
    $(document).ready(function () {
        var theme = getDemoTheme();
        // Create jqxTabs.
        $('#jqxTabs').jqxTabs({ width: '90%', height: '510px', position: 'top', theme: theme });
        
        
    });
    </script>

    
    @{
        List<SelectListItem> selectListDT = new List<SelectListItem>();
        List<DanToc> dsdt = ViewBag.DSDanToc;
        foreach (var l in dsdt)
        {
            SelectListItem item = new SelectListItem();
            item.Text = l.TenDanToc;
            item.Value = l.ID.ToString();
            selectListDT.Add(item);
        }

        List<SelectListItem> selectListTG = new List<SelectListItem>();
        List<TonGiao> dstg = ViewBag.DSTonGiao;
        foreach (var l in dstg)
        {
            SelectListItem item = new SelectListItem();
            item.Text = l.TenTonGiao;
            item.Value = l.ID.ToString();
            selectListTG.Add(item);
        }

        List<SelectListItem> selectListCVHT = new List<SelectListItem>();
        List<ChucVu> cv = ViewBag.DSChucVu;
        foreach (var l in cv)
        {
            SelectListItem item = new SelectListItem();
            item.Text = "" + l.Ten + " - " + QLNS.Models.PhongBanModels.GetNameDepartment((int)l.IDPhongBan);
            item.Value = l.ID.ToString();
            selectListCVHT.Add(item);
        }

        //List<SelectListItem> selectListTenNgach = new List<SelectListItem>();
        //List<BangTenNgach> tenngach = ViewBag.DSTenNgach;
        //foreach (var l in tenngach)
        //{
        //    SelectListItem item = new SelectListItem();
        //    item.Text = l.TenNgach;
        //    // item.Value = l.ID.ToString();
        //    selectListTenNgach.Add(item);
        //}

        List<SelectListItem> selectListTDCM = new List<SelectListItem>();
        List<ChuyenMon> TDCM = ViewBag.DSChuyenMon;
        foreach (var l in TDCM)
        {
            SelectListItem item = new SelectListItem();
            item.Text = l.Ten;
            item.Value = l.ID.ToString();
            selectListTDCM.Add(item);
        }

        List<SelectListItem> selectListTDQLNN = new List<SelectListItem>();
        List<QLNhaNuoc> TDQLNN = ViewBag.DSQLNhaNuoc;
        SelectListItem item0_qlnn = new SelectListItem();
        item0_qlnn.Text = "Không";
        item0_qlnn.Value = "0";
        selectListTDQLNN.Add(item0_qlnn);
        foreach (var l in TDQLNN)
        {
            SelectListItem item = new SelectListItem();
            item.Text = l.Ten;
            item.Value = l.ID.ToString();
            selectListTDQLNN.Add(item);
        }

        List<SelectListItem> selectListTDLyLuan = new List<SelectListItem>();
        List<LyLuan> TDLL = ViewBag.DSLyLuan;
        SelectListItem item0_ll = new SelectListItem();
        item0_ll.Text = "Không";
        item0_ll.Value = "0";
        selectListTDLyLuan.Add(item0_ll);
        foreach (var l in TDLL)
        {
            SelectListItem item = new SelectListItem();
            item.Text = l.Ten;
            item.Value = l.ID.ToString();
            selectListTDLyLuan.Add(item);
        }

        List<SelectListItem> selectListTDNgoaiNgu = new List<SelectListItem>();
        List<CapNgoaiNgu> TDNN = ViewBag.CapNgoaiNgu;
        SelectListItem item0_nn = new SelectListItem();
        item0_nn.Text = "Không";
        item0_nn.Value = "0";
        selectListTDNgoaiNgu.Add(item0_nn);
        foreach (var l in TDNN)
        {
            SelectListItem item = new SelectListItem();
            item.Text = l.Ten;
            item.Value = l.ID.ToString();
            selectListTDNgoaiNgu.Add(item);
        }

        List<SelectListItem> selectListTDTH = new List<SelectListItem>();
        List<CapTinHoc> TDTH = ViewBag.CapTinHoc;
        SelectListItem item0_th = new SelectListItem();
        item0_th.Text = "Không";
        item0_th.Value = "0";
        selectListTDTH.Add(item0_th);
        foreach (var l in TDTH)
        {
            SelectListItem item = new SelectListItem();
            item.Text = l.Ten;
            item.Value = l.ID.ToString();
            selectListTDTH.Add(item);
        }


        List<SelectListItem> selectListloaihinhdaotao = new List<SelectListItem>();
        List<LoaiHinhDaoTao> lhdt = ViewBag.LoaiHinhDaoTao;
        foreach (var l in lhdt)
        {
            SelectListItem item = new SelectListItem();
            item.Text = l.Ten;
            item.Value = l.ID.ToString();
            selectListloaihinhdaotao.Add(item);
        }

        List<SelectListItem> trangthai = new List<SelectListItem>();
        trangthai.Add(new SelectListItem { Value = "0", Text = "Chuyển công tác" });
        trangthai.Add(new SelectListItem { Value = "1", Text = "Đang làm việc", Selected = true });
        trangthai.Add(new SelectListItem { Value = "2", Text = "Nghỉ" });
    } 
    @using (Html.BeginForm("Add", "Pers", FormMethod.Post, new { name = "form", id = "submit" }))
    {
<div class="toolbar">
<ul>
    <li><input class="tbtnBack" type="button" value="Quay về" onclick="javascript:history.back()"/>
    </li>
    <li><input class="tbtnSave" type="Submit" value="Lưu" /> 
    </li>
</ul>
<div class="ttitle">Thêm mới Hồ sơ</div>
</div>
<div id='jqxTabs'>
            <ul>
                <li style="margin-left: 30px;">Sơ yếu lý lịch</li>
                <li>Tuyển dụng</li>
                <li>Trình độ</li>
                <li>Tham gia tổ chức Chính trị-Xã hội </li>
                <li>Chi tiết hồ sơ</li>
                
            </ul> 
              
            <div>
               <table width="500" border="1"> 
                   <tr>
                    <td>Số hiệu cán bộ</td>
                    <td>@Html.TextBox("SoHieuCBCC")</td>
                  </tr>  
                  <tr> 
                    <td>Họ</td>
                    <td>@Html.TextBox("Ho")</td>
                  </tr>
                  <tr> 
                    <td>Tên</td>
                    <td>@Html.TextBox("Ten")</td>
                  </tr>
                 <tr> 
                    <td>Tên gọi khác</td>
                    <td>@Html.TextBox("TenGoiKhac")</td>
                  </tr>
                  <tr> 
                    <td>Hình minh hoạ</td>
                     <td>@Html.TextBox("Image") <input id="Button1" type="button" value="Chọn File" onClick="BrowseServer();"/></td>
                  </tr>
                  <tr>
                    <td>Ngày sinh</td>
                    <td>  
                    @{  DateTime dt = DateTime.Now;
                        @Html.TextBox("NgaySinhCBCC", dt.ToString("dd/MM/yyyy"))
                    } 
                   </td>
                   </tr>
                    <tr> 
                    <td>Giới tính</td>
                    <td>@Html.TextBox("GioiTinh")</td>
                  </tr>
                   <tr> 
                    <td>Nơi sinh</td>
                    <td>@Html.TextBox("NoiSinh")</td>
                  </tr>
                  <tr> 
                    <td>Quê quán</td>
                    <td>@Html.TextBox("QueQuan")</td>
                  </tr>
                 <tr>
                    <td>Dân tộc</td>
                    <td>@Html.DropDownList("IDDanToc", selectListDT)</td>
                    </tr>
                <tr>
                    <td>Tôn giáo</td>
                    <td>@Html.DropDownList("IDTonGiao", selectListTG)</td>
                    </tr>
                    <tr> 
                    <td>Hộ khẩu thường trú</td>
                    <td>@Html.TextBox("HoKhauThuongTru")</td>
                  </tr>
                  <tr> 
                    <td>Địa chỉ</td>
                    <td>@Html.TextBox("DiaChi")</td>
                  </tr>
                  <tr>
                    <td>Trạng thái</td>
                    <td>@Html.DropDownList("TrangThai", trangthai)</td>
                  </tr>
              </table>  
            </div>
            <div>
                <table width="500" border="1">                    
                    
                  <tr> 
                    <td>Nghề nghiệp tuyển dụng</td>                    
                    <td>@Html.TextBox("NNTuyenDung")</td>
                  </tr>
                  <tr> 
                    <td>Ngày tuyển dụng</td>                    
                    <td>@Html.TextBox("NgayTuyenDung")</td>
                  </tr>
                  <tr> 
                    <td>Hình thức tuyển dụng</td>                    
                    <td>@Html.TextBox("HinhThucTuyenDung")</td>
                  </tr>
                  <tr> 
                    <td>Cơ quan tuyển dụng</td>
                    <td>@Html.TextBox("CoQuanTuyenDung")</td>
                  </tr>
                  <tr>
                    <td>Chức vụ hiện tại</td>
                    <td>@Html.DropDownList("ChucVuHienTai", selectListCVHT)</td>
                    </tr>
                    <tr> 
                    <td>Công việc được giao</td>
                    <td>@Html.TextBox("CongViecDuocGiao")</td>
                  </tr>
                  <tr>
                    <td>Tên ngạch công chức</td>
                    <td>
                        <select class="combobox" id="TenNgachCC" name="TenNgachCC" style="display:none;"></select>
                    </td>
                    </tr>
                   <tr> 
                    <td>Mã ngạch</td>                    
                    <td>
                        <select class="combobox" id="MaNgachCC" name="MaNgachCC" style="display:none;"></select>
                    </td>
                  </tr>
                  <tr> 
                    <td>Bậc lương</td>
                    <td>@Html.TextBox("BacLuongCBCC")</td>
                  </tr>
                  <tr> 
                    <td>Hệ số lương</td>
                    <td>@Html.TextBox("HeSoLuongCBCC")</td>
                  </tr>
                  <tr> 
                    <td>Ngày hưởng lương</td>
                    <td>@Html.TextBox("NgayHuongLuong")</td>
                  </tr>
                   </table>  
            </div>
            <div>
                 <table width="500" border="1">                    
                  
                  <tr> 
                    <td>Trình độ phổ thông</td>
                    <td>@Html.TextBox("TrinhDoPhoThong")</td>
                  </tr>
                  <tr>
                    <td>Trình độ chuyên môn</td>
                    <td>@Html.DropDownList("TrinhDoChuyenMon", selectListTDCM)</td>
                    </tr>
                    <tr> 
                    <td>Chuyên ngành</td>
                    <td>@Html.TextBox("ChuyenNganh")</td>
                  </tr>
                  <tr> 
                    <td>Loại hình đào tạo</td>
                    <td>@Html.DropDownList("LoaiHinhDaoTao", selectListloaihinhdaotao)</td>
                  </tr>
                  <tr>
                    <td>Trình độ Quản lý nhà nước</td>
                    <td>@Html.DropDownList("TrinhDoQLNN", selectListTDQLNN)</td>
                    </tr>
                    <tr>
                    <td>Trình độ lý luận</td>
                    <td>@Html.DropDownList("TrinhDoLyLuan", selectListTDLyLuan)</td>
                    </tr>
                    <tr> 
                    <td>Tên ngoại ngữ</td>
                    <td>@Html.TextBox("TenNgoaiNgu")</td>
                  </tr>
                   <tr>
                    <td>Trình độ ngoại ngữ</td>
                    <td>@Html.DropDownList("TrinhDoNgoaiNgu", selectListTDNgoaiNgu)</td>
                    </tr>
                    
                  <tr>
                    <td>Trình độ tin học</td>
                    <td>@Html.DropDownList("TrinhDoTinHoc", selectListTDTH)</td>
                    </tr>
                    </table> 
            </div>
            <div>
                <table width="500" border="1">                    
                    <tr> 
                    <td>Ngày vào Đảng</td>
                    <td>@Html.TextBox("NgayVaoDang")</td>
                  </tr>
                  <tr> 
                    <td>Ngày vào chính thức</td>
                    <td>@Html.TextBox("NgayVaoChinhThuc")</td>
                  </tr>
                  <tr> 
                    <td>Ngày TGTC_CTXH</td>
                    <td>@Html.TextBox("NgayTGTC_CTXH")</td>
                  </tr>
                  <tr> 
                    <td>Nhiệm vụ trong tổ chức</td>
                    <td>@Html.TextBox("NhiemVuTrongToChuc")</td>
                  </tr>
                  <tr> 
                    <td>Ngày nhập ngũ</td>
                    <td>@Html.TextBox("NgayNhapNgu")</td>
                  </tr>
                  <tr> 
                    <td>Ngày xuất ngũ</td>
                    <td>@Html.TextBox("NgayXuatNgu")</td>
                  </tr>
                  <tr> 
                    <td>Quân hàm</td>
                    <td>@Html.TextBox("QuanHam")</td>
                  </tr>
                  <tr> 
                    <td>Danh hiệu</td>
                    <td>@Html.TextBox("DanhHieu")</td>
                  </tr>
                  <tr> 
                    <td>Năm phong tặng</td>
                    <td>@Html.TextBox("NamPhongTang")</td>
                  </tr>
                 </table>
            </div>
            <div>
                <table width="500" border="1">         
                  
                  <tr> 
                    <td>Sở trường công tác</td>
                    <td>@Html.TextBox("SoTruongCongTac")</td>
                  </tr>
                  <tr> 
                    <td>Tình trạng sức khoẻ</td>
                    <td>@Html.TextBox("TinhTrangSucKhoe")</td>
                  </tr>
                  <tr> 
                    <td>Chiều cao</td>
                    <td>@Html.TextBox("ChieuCao")</td>
                  </tr>
                  <tr> 
                    <td>Cân nặng</td>
                    <td>@Html.TextBox("CanNang")</td>
                  </tr>
                  <tr> 
                    <td>Nhóm máu</td>
                    <td>@Html.TextBox("NhomMau")</td>
                  </tr>
                  <tr> 
                    <td>Thương binh</td>
                    <td>@Html.TextBox("ThuongBinh")</td>
                  </tr>
                  <tr> 
                    <td>Gia đình chính sách</td>
                    <td>@Html.TextBox("GiaDinhChinhSach")</td>
                  </tr>
                  <tr> 
                    <td>Số CMND</td>
                    <td>@Html.TextBox("SoCMND")</td>
                  </tr>
                  <tr> 
                    <td>Ngày cấp</td>
                    <td>@Html.TextBox("NgayCap", dt.ToString("dd/MM/yyyy"))</td>
                  </tr>
                  <tr> 
                    <td>Số sổ bảo hiểm xã hội</td>
                    <td>@Html.TextBox("SoSoBHXH")</td>
                  </tr>
                  <tr> 
                    <td>Nhận xét</td>
                    <td>@Html.TextBox("NhanXet")</td>
                  </tr>
                  
                  <tr> 
                    <td>Tham gia cấp uỷ xã</td>
                    <td>@Html.TextBox("Tgiacapuyxa")</td>
                  </tr>
                  <tr> 
                    <td>Ngày nhận chức</td>
                    <td>@Html.TextBox("NgayNhanChuc")</td>
                  </tr>
                  <tr> 
                    <td>Tham gia hội đông nhân dân</td>
                    <td>@Html.TextBox("TgiaHDND")</td>
                  </tr>
                  <tr> 
                    <td>Biết tiếng dân tộc</td>
                    <td>@Html.TextBox("TiengDanToc")</td>
                  </tr>
                  <tr> 
                    <td>Tham gia quốc phòng</td>
                    <td>@Html.TextBox("TgiaQuocPhong")</td>
                  </tr>
                  <tr> 
                    <td>Chức vụ kiêm nhiệm</td>
                    <td>@Html.TextBox("ChucVuKiemNhiem")</td>
                  </tr>
                </table> 
            </div> 
               
        </div>
        <input id="botton" class="btnSave" type="Submit" value="Lưu" />    
    }
    <script type="text/javascript" language="javascript">
        $("#submit").submit(function () {
            if ($("#SoHieuCBCC").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập số hiệu cán bộ công chức!");
                return false;
            }
            if ($("#Ho").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập họ cán bộ công chức!");
                return false;
            }
            if ($("#NgaySinhCBCC").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập ngay sinh cán bộ công chức!");
                return false;
            }
            if ($("#Ten").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập tên cán bộ công chức!");
                return false;
            }

            if ($("#GioiTinh").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập giới tính cán bộ công chức!");
                return false;
            }
            if ($("#NNTuyenDung").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập ngành nghề tuyển dụng!");
                return false;
            }
            if ($("#NgayTuyenDung").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập ngày tuyển dụng!");
                return false;
            }
            if ($("#TenNgachCC").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập tên ngạch công chức!");
                return false;
            }
            if ($("#MaNgachCC").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập mã ngạch công chức!");
                return false;
            }
            if ($("#BacLuongCBCC").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập bậc lương!");
                return false;
            }
            if ($("#HeSoLuongCBCC").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập hệ số lương!");
                return false;
            }
            if ($("#NgayHuongLuong").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập ngày hưởng lương!");
                return false;
            }
            if ($("#TrinhDoPhoThong").val().toString() == "") {
                jqxAlert.alert("Vui lòng nhập trình độ phổ thông!");
                return false;
            }
        });
    </script>
    <script type="text/javascript">
     $(document).ready(function () {
        $("#BacLuongCBCC").change(function () {
            var mncc = document.getElementById("MaNgachCC");
            var bl = document.getElementById("BacLuongCBCC");
            if (mncc.value != "" && bl.value != "") {
                $.get('/Pers/getHeSoLuong?mancc=' + mncc.value + '&&bacluong=' + bl.value, null,
                               function (data) {
                                   if (data > 0) {
                                       var hsl = document.getElementById("HeSoLuongCBCC");
                                       hsl.value = data;
                                   }
                                   else {
                                       var hsl = document.getElementById("HeSoLuongCBCC");
                                       hsl.value = "";
                                       jqxAlert.alert('Bậc lương không chính xác!');                                       
                                   }
                               });
            }
            else {

            }
        });
       });
    </script>
    <script type="text/javascript" language="javascript">
        $(document).ready(function () {
            $('#TenNgachCC').combobox({
                select: function (event, ui) {                    
                    $.getJSON("/Process/GetDSTenNgachCC/", null,
                    function (data) {
                        var select = $('#MaNgachCC');
                        select.empty();
                        $.each(data, function (index, itemData) {
                            if (itemData.Value == ui.item.value) {
                                select.append($('<option/>', {
                                    value: itemData.Key,
                                    text: itemData.Key
                                }));
                            }
                        });
                    });
                }
            });
            $('#MaNgachCC').combobox({
                select: function (event, ui) {
                    $.getJSON("/Process/GetDSTenNgachCC/", null,
                    function (data) {
                        var select = $('#TenNgachCC');
                        select.empty();
                        $.each(data, function (index, itemData) {
                            if (itemData.Key == ui.item.value) {
                                select.append($('<option/>', {
                                    value: itemData.Value,
                                    text: itemData.Value
                                }));
                            }
                        });
                    });
                }
            });
            $.getJSON("/Process/GetDSTenNgachCC/", null,
                            function (data) {
                                var select = $('#TenNgachCC');
                                select.empty();
                                select.append($('<option/>', {
                                    value: "",
                                    text: "Tên ngạch công chức"
                                }));
                                $.each(data, function (index, itemData) {
                                    select.append($('<option/>', {
                                        value: itemData.Value,
                                        text: itemData.Value
                                    }));
                                });
                                var select = $('#MaNgachCC');
                                select.empty();
                                select.append($('<option/>', {
                                    value: "",
                                    text: "Mã ngạch công chức"
                                }));
                                $.each(data, function (index, itemData) {
                                    select.append($('<option/>', {
                                        value: itemData.Key,
                                        text: itemData.Key
                                    }));
                                });
                            });
        });
     
 </script>
 <script type="text/javascript">
     (function ($) {
         $.widget("custom.combobox", {
             _create: function () {
                 this.wrapper = $("<span>")
          .addClass("custom-combobox")
          .insertAfter(this.element);

                 this.element.hide();
                 this._createAutocomplete();
                 this._createShowAllButton();
             },

             _createAutocomplete: function () {
                 var selected = this.element.children(":selected"),
          value = selected.val() ? selected.text() : "";

                 this.input = $("<input>")
          .appendTo(this.wrapper)
          .val(value)
          .attr("title", "")
          .addClass("custom-combobox-input ui-widget ui-widget-content ui-state-default ui-corner-left")
          .autocomplete({
              delay: 0,
              minLength: 0,
              source: $.proxy(this, "_source")
          })
          .tooltip({
              tooltipClass: "ui-state-highlight"
          });

                 this._on(this.input, {
                     autocompleteselect: function (event, ui) {
                         ui.item.option.selected = true;
                         this._trigger("select", event, {
                             item: ui.item.option
                         });
                     },

                     autocompletechange: "_removeIfInvalid"
                 });
             },

             _createShowAllButton: function () {
                 var input = this.input,
          wasOpen = false;

                 $("<a>")
          .attr("tabIndex", -1)
          .attr("title", "Show All Items")
          .tooltip()
          .appendTo(this.wrapper)
          .button({
              icons: {
                  primary: "ui-icon-triangle-1-s"
              },
              text: false
          })
          .removeClass("ui-corner-all")
          .addClass("custom-combobox-toggle ui-corner-right")
          .mousedown(function () {
              wasOpen = input.autocomplete("widget").is(":visible");
          })
          .click(function () {
              input.focus();

              // Close if already visible
              if (wasOpen) {
                  return;
              }

              // Pass empty string as value to search for, displaying all results
              input.autocomplete("search", "");
          });
             },

             _source: function (request, response) {
                 var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
                 response(this.element.children("option").map(function () {
                     var text = $(this).text();
                     if (this.value && (!request.term || matcher.test(text)))
                         return {
                             label: text,
                             value: text,
                             option: this
                         };
                 }));
             },

             _removeIfInvalid: function (event, ui) {

                 // Selected an item, nothing to do
                 if (ui.item) {
                     return;
                 }

                 // Search for a match (case-insensitive)
                 var value = this.input.val(),
          valueLowerCase = value.toLowerCase(),
          valid = false;
                 this.element.children("option").each(function () {
                     if ($(this).text().toLowerCase() === valueLowerCase) {
                         this.selected = valid = true;
                         return false;
                     }
                 });

                 // Found a match, nothing to do
                 if (valid) {
                     return;
                 }

                 // Remove invalid value
                 this.input
          .val("")
          .attr("title", value + " didn't match any item")
          .tooltip("open");
                 this.element.val("");
                 this._delay(function () {
                     this.input.tooltip("close").attr("title", "");
                 }, 2500);
                 this.input.autocomplete("instance").term = "";
             },

             _destroy: function () {
                 this.wrapper.remove();
                 this.element.show();
             }
         });
     })(jQuery);

     $(function () {
         $(".combobox").combobox();
     });
  </script>
  <style type="text/css">
  .custom-combobox {
    position: relative;
    display: inline-block;
  }
  .custom-combobox-toggle {
    position: absolute;
    top: 0;
    bottom: 0;
    margin-left: -1px;
    padding: 0;
  }
  .custom-combobox-input {
    margin: 0;
    padding: 5px 10px;
  }
  </style>